const Joi = require('joi');

// 投诉建议提交的数据验证规则
const submitComplaintSchema = Joi.object({
  type: Joi.string().valid('service', 'efficiency', 'facility', 'other').required().messages({
    'any.only': '投诉类型必须是：service（服务态度）、efficiency（办事效率）、facility（设施环境）、other（其他建议）',
    'any.required': '投诉类型不能为空'
  }),
  title: Joi.string().min(5).max(200).required().messages({
    'string.min': '标题至少需要5个字符',
    'string.max': '标题不能超过200个字符',
    'any.required': '标题不能为空'
  }),
  content: Joi.string().min(10).max(2000).required().messages({
    'string.min': '内容至少需要10个字符',
    'string.max': '内容不能超过2000个字符',
    'any.required': '内容不能为空'
  }),
  contact: Joi.string().pattern(/^1[3-9]\d{9}$/).optional().allow('').messages({
    'string.pattern.base': '请输入正确的手机号码格式'
  }),
  urgent: Joi.boolean().optional().default(false)
});


module.exports = {
  submitComplaintSchema
}